The remarkable growth of Internet has resulted in a rapid increase in personal communication speed. Such a communication speed improvement offers an environment capable of downloading or uploading a large amount of data through access to a computer located at a remote place, or capable of using such a remote computer through a control program thereof as if being locally logged in the remote computer.
In addition, a cloud streaming service based on screen virtualization is attracting attention. In the cloud streaming service, a server runs an application, compresses a running screen through video encoding, and sends the compressed screen to a client. Then the client plays a transmitted video as if the application is running at his or her device.
In this cloud streaming, a capture unit delivers original buffer data to an encoding unit, which delivers data, encoded from input buffer data, to a transmission unit, thus providing a service to a client. In this case, if the number of simultaneous sessions increases and thereby data traffic reaches a system memory bandwidth limit, a memory bottleneck occurs due to such data traffic. Therefore, even though other resources are available, a service becomes unavailable. Particularly, the original buffer data obtained by the capture unit is RGBA occupying four bytes per pixel, thus resulting in width*height*4 and increasing the amount of data per frame having to be transmitted to the input unit. Accordingly, when the number of sessions or a frame rate increases, the system memory bandwidth rapidly reaches the limit.
Meanwhile, since the server runs an application, compresses a running screen through video encoding, and sends the compressed screen to the client, the client may use a cloud streaming service based on screen virtualization by playing a transmitted video as if the application is running at his or her device.
In order to increase the number of simultaneous accessing users, this cloud streaming service system may process a service in parallel by using a streaming pipeline for simultaneously processing the cloud streaming service step by step. However, since many applications corresponding to the number of simultaneous assessing users are running at the server, the use of the server is concentrated on a central processing unit (CPU) and a memory bus even though using the streaming pipeline. This may often cause a bottleneck to such sections and also invite system instability. Therefore, the maximum number of simultaneous assessing users that can be processed may be limited.
Further, in a computing environment based on this cloud streaming service, main services or functions are executed at the server. Therefore, technique for detecting in advance any failure of the server is required.
Relevant techniques are disclosed in Korean Patent Publication Nos. 10-2013-0025987 (Title: Image processing system of image change adaptation), published on Mar. 13, 2013, 10-2012-0062758 (Title: System for adaptively streaming audio objects), published on Jun. 14, 2012, and 10-2011-0012740 (Title: Device and method for detecting duplicate contents), published on Feb. 9, 2011.